package IT.Servlet;

import IT.DataAccess.DatCatalogoEstado;
import IT.DataAccess.IDatCatalogoEstado;
import IT.Entities.CatalogoEstado;
import IT.Helper.Helper;
import java.io.*;
import java.net.*;

import javax.servlet.*;
import javax.servlet.http.*;

public class CatalogoServlet extends HttpServlet {
   

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        response.setContentType("text/html;charset=ISO-8859-1");
        Helper oHelper=new Helper();
        IDatCatalogoEstado oDatCatalogo;
        CatalogoEstado oCatalogo;
        
        String cAccion,cMensaje;
        cAccion="";cMensaje="";
        int nCodigo,nValor;
        nCodigo=0;nValor=0;
        
        if(request.getParameter("btnAccion")!=null){
            cAccion=request.getParameter("btnAccion").trim();
            
            if(cAccion.equals("Insertar")){
                if(request.getParameter("txtNCodigo").trim().length()==0){
                    cMensaje+="<li>Codigo es obligatorio</li>";
                }else{                    
                    try{
                        nCodigo=Integer.parseInt(request.getParameter("txtNCodigo").trim());                        
                    }catch(Exception ex){
                        cMensaje+="<li>Codigo formato incorrecto</li>";
                    }
                }
                
                if(request.getParameter("txtNNombre")==null){
                    cMensaje+="<li>Nombre es obligatorio</li>";
                }else{
                    if(request.getParameter("txtNNombre").trim().length()==0){
                        cMensaje+="<li>Nombre es obligatorio</li>";
                    }
                }
                
               if(request.getParameter("txtNValor").trim().length()==0){
                    cMensaje+="<li>Valor es obligatorio</li>";
               }else{                    
                    try{
                        nValor=Integer.parseInt(request.getParameter("txtNValor").trim());                        
                    }catch(Exception ex){
                        cMensaje+="<li>Valor formato incorrecto</li>";
                    }
               }
                
                if(cMensaje.trim().length()==0){
                    oCatalogo=new CatalogoEstado();
                    oCatalogo.setCod_est_in(nCodigo);                  
                    oCatalogo.setNom_est_vc(oHelper.ValidaEncode(request.getParameter("txtNNombre")));
                    oCatalogo.setVal_est_in(nValor);
                    oDatCatalogo=new DatCatalogoEstado();
                    oDatCatalogo.Insertar(oCatalogo);
                }else{
                   request.getSession().setAttribute("lblMensaje","<ul>"+cMensaje+"</ul>");
               }
               response.sendRedirect("WebCatalogo.jsp");
            }
            
            if(cAccion.equals("Editar")){
               nCodigo=0;nValor=0;
               if(request.getParameter("hdnCodigo").trim().length()==0){
                    cMensaje+="<li>Codigo es obligatorio</li>";
               }else{                    
                    try{
                        nCodigo=Integer.parseInt(request.getParameter("hdnCodigo").trim());                        
                    }catch(Exception ex){
                        cMensaje+="<li>Codigo formato incorrecto</li>";
                    }
               }
                    
                if(request.getParameter("txtNombre")==null){
                    cMensaje+="<li>Nombre es obligatorio</li>";
                }else{
                    if(request.getParameter("txtNombre").trim().length()==0){
                        cMensaje+="<li>Nombre es obligatorio</li>";
                    }
                }    
               
               if(request.getParameter("hdnValor").trim().length()==0){
                    cMensaje+="<li>Valor es obligatorio</li>";
               }else{                    
                    try{
                        nValor=Integer.parseInt(request.getParameter("hdnValor").trim());                        
                    }catch(Exception ex){
                        cMensaje+="<li>Valor formato incorrecto</li>";
                    }
               }
                
                if(cMensaje.trim().length()==0){
                    oCatalogo=new CatalogoEstado();
                    oCatalogo.setCod_est_in(nCodigo);
                    oCatalogo.setNom_est_vc(request.getParameter("txtNombre"));
                    oCatalogo.setVal_est_in(nValor);
                    oDatCatalogo=new DatCatalogoEstado();
                    oDatCatalogo.Editar(oCatalogo);
                }else{
                  request.getSession().setAttribute("lblMensaje","<ul>"+cMensaje+"</ul>");
               }
               response.sendRedirect("WebCatalogo.jsp");
            }
            
            if(cAccion.equals("Cancelar")){
                response.sendRedirect("WebCatalogo.jsp");
            }
        }
    } 

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /** 
    * Handles the HTTP <code>GET</code> method.
    * @param request servlet request
    * @param response servlet response
    */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    } 

    /** 
    * Handles the HTTP <code>POST</code> method.
    * @param request servlet request
    * @param response servlet response
    */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }

    /** 
    * Returns a short description of the servlet.
    */
    public String getServletInfo() {
        return "Short description";
    }
    // </editor-fold>
}
